﻿
using System;
using System.Runtime.Serialization;
using V82;
using V82.Перечисления;//Ссылка;
namespace V82.Перечисления//Ссылка
{
	[DataContract]
	public enum УдалитьСостоянияКандидатаНаРаботу
	{
		[NonSerialized]
		ПустаяСсылка = - 1,
		[EnumMember(Value = "{\"Ссылка\":\"c6986fb3-838e-4284-84dc-3f6aecf3c85f\", \"Представление\":\"ПринятКРассмотрению\"}")]
		ПринятКРассмотрению = 0,//Принят к рассмотрению
		[EnumMember(Value = "{\"Ссылка\":\"1e4314e0-5bfa-4c22-9c96-4a9c7630680e\", \"Представление\":\"Отложен\"}")]
		Отложен = 1,
	///<summary>
	///переведен в "черный" список
	///</summary>
		[EnumMember(Value = "{\"Ссылка\":\"ae629d46-32a7-4857-847e-c46d829a615b\", \"Представление\":\"Отклонен\"}")]
		Отклонен = 2,
	///<summary>
	///Кандидат зачислен в "короткий список"
	///</summary>
		[EnumMember(Value = "{\"Ссылка\":\"1d8f909c-e8b6-40b2-911c-fd9821eeede9\", \"Представление\":\"ВКороткомСпискеНаВакансию\"}")]
		ВКороткомСпискеНаВакансию = 3,//В коротком списке на вакансию
	///<summary>
	///Положительное решение
	///</summary>
		[EnumMember(Value = "{\"Ссылка\":\"5df06a13-653e-4711-a041-cb72ec45c152\", \"Представление\":\"ПредложилиРаботу\"}")]
		ПредложилиРаботу = 4,//Предложили работать
		[EnumMember(Value = "{\"Ссылка\":\"096b7f96-bc9c-4932-bd78-86fe28e8c3e8\", \"Представление\":\"ПринятНаИспытательныйСрок\"}")]
		ПринятНаИспытательныйСрок = 5,//Принят на испытательный срок
		[EnumMember(Value = "{\"Ссылка\":\"f92d4970-f82e-43d0-a553-0b554a13c4e5\", \"Представление\":\"ВОбработке\"}")]
		ВОбработке = 6,//В обработке
		[EnumMember(Value = "{\"Ссылка\":\"e325f706-efdd-43b0-812e-3eb16371cafe\", \"Представление\":\"НеПрошелИспытательныйСрок\"}")]
		НеПрошелИспытательныйСрок = 7,//Не прошел испытательный срок
		[EnumMember(Value = "{\"Ссылка\":\"28e1604f-9c3c-4c4b-811d-f9953b9e3ea6\", \"Представление\":\"ПринятНаРаботу\"}")]
		ПринятНаРаботу = 8,//Принят на работу
	}
	public static partial class УдалитьСостоянияКандидатаНаРаботу_Значения//:ПеречислениеСсылка
	{
		public static readonly Guid ПринятКРассмотрению = new Guid("6a3fdc84-f3ec-5fc8-4284-838ec6986fb3");//Принят к рассмотрению
		public static readonly Guid Отложен = new Guid("9c4a969c-3076-0e68-4c22-5bfa1e4314e0");
		///<summary>
		///переведен в "черный" список
		///</summary>
		public static readonly Guid Отклонен = new Guid("6dc47e84-9a82-5b61-4857-32a7ae629d46");
		///<summary>
		///Кандидат зачислен в "короткий список"
		///</summary>
		public static readonly Guid ВКороткомСпискеНаВакансию = new Guid("98fd1c91-ee21-e9ed-40b2-e8b61d8f909c");//В коротком списке на вакансию
		///<summary>
		///Положительное решение
		///</summary>
		public static readonly Guid ПредложилиРаботу = new Guid("72cb41a0-45ec-52c1-4711-653e5df06a13");//Предложили работать
		public static readonly Guid ПринятНаИспытательныйСрок = new Guid("fe8678bd-e828-e8c3-4932-bc9c096b7f96");//Принят на испытательный срок
		public static readonly Guid ВОбработке = new Guid("550b53a5-134a-e5c4-43d0-f82ef92d4970");//В обработке
		public static readonly Guid НеПрошелИспытательныйСрок = new Guid("b13e2e81-7163-feca-43b0-efdde325f706");//Не прошел испытательный срок
		public static readonly Guid ПринятНаРаботу = new Guid("95f91d81-9e3b-a63e-4c4b-9c3c28e1604f");//Принят на работу
		public static УдалитьСостоянияКандидатаНаРаботу Получить(this УдалитьСостоянияКандидатаНаРаботу Значение, byte[] Ссылка)
		{
			return Получить(Значение, new Guid(Ссылка));
		}
		public static УдалитьСостоянияКандидатаНаРаботу Получить(this УдалитьСостоянияКандидатаНаРаботу Значение, Guid Ссылка)
		{
			if(Ссылка == ПринятКРассмотрению)
			{
				return УдалитьСостоянияКандидатаНаРаботу.ПринятКРассмотрению;
			}
			else if(Ссылка == Отложен)
			{
				return УдалитьСостоянияКандидатаНаРаботу.Отложен;
			}
			else if(Ссылка == Отклонен)
			{
				return УдалитьСостоянияКандидатаНаРаботу.Отклонен;
			}
			else if(Ссылка == ВКороткомСпискеНаВакансию)
			{
				return УдалитьСостоянияКандидатаНаРаботу.ВКороткомСпискеНаВакансию;
			}
			else if(Ссылка == ПредложилиРаботу)
			{
				return УдалитьСостоянияКандидатаНаРаботу.ПредложилиРаботу;
			}
			else if(Ссылка == ПринятНаИспытательныйСрок)
			{
				return УдалитьСостоянияКандидатаНаРаботу.ПринятНаИспытательныйСрок;
			}
			else if(Ссылка == ВОбработке)
			{
				return УдалитьСостоянияКандидатаНаРаботу.ВОбработке;
			}
			else if(Ссылка == НеПрошелИспытательныйСрок)
			{
				return УдалитьСостоянияКандидатаНаРаботу.НеПрошелИспытательныйСрок;
			}
			else if(Ссылка == ПринятНаРаботу)
			{
				return УдалитьСостоянияКандидатаНаРаботу.ПринятНаРаботу;
			}
			return УдалитьСостоянияКандидатаНаРаботу.ПустаяСсылка;
		}
		public static byte[] Ключ(this УдалитьСостоянияКандидатаНаРаботу Значение)
		{
			return Ссылка(Значение).ToByteArray();
		}
		public static Guid Ссылка(this УдалитьСостоянияКандидатаНаРаботу Значение)
		{
			switch (Значение)
			{
				case УдалитьСостоянияКандидатаНаРаботу.ПринятКРассмотрению: return ПринятКРассмотрению;
				case УдалитьСостоянияКандидатаНаРаботу.Отложен: return Отложен;
				case УдалитьСостоянияКандидатаНаРаботу.Отклонен: return Отклонен;
				case УдалитьСостоянияКандидатаНаРаботу.ВКороткомСпискеНаВакансию: return ВКороткомСпискеНаВакансию;
				case УдалитьСостоянияКандидатаНаРаботу.ПредложилиРаботу: return ПредложилиРаботу;
				case УдалитьСостоянияКандидатаНаРаботу.ПринятНаИспытательныйСрок: return ПринятНаИспытательныйСрок;
				case УдалитьСостоянияКандидатаНаРаботу.ВОбработке: return ВОбработке;
				case УдалитьСостоянияКандидатаНаРаботу.НеПрошелИспытательныйСрок: return НеПрошелИспытательныйСрок;
				case УдалитьСостоянияКандидатаНаРаботу.ПринятНаРаботу: return ПринятНаРаботу;
			}
			return Guid.Empty;
		}
	}
}